As a technique for backing up data, a snapshot is known. A snapshot is an image of data created at a certain point in time. As an example of a method for creating a snapshot, a method using a copy-on-write scheme is known. For example, in the case of creating a snapshot of a first storage area using the copy-on-write scheme, actual data in the first storage area is not copied at the time of creating the snapshot. Instead, management information that enables a reference to the data in the first storage area, such as a pointer or the like indicating the data in the first storage area, is created. Thereafter, upon updating the first storage area, the data before update is saved in a second storage area, and then the first storage area is updated with new data. With this method, it is possible to quickly respond to a request to create a snapshot.
As an example of a technique for snapshots, there has been proposed a technique that reads, from a logical volume, data updated during a period from reception of a first-generation snapshot creation request to issuance of a second-generation snapshot creation request, and writes the data to a pool area.
There has also been proposed a technique that, in a storage system, specifies an area in which data is updated during a period from when a second snapshot preceding a first snapshot is taken to when the first snapshot is taken, based on a differential bitmap table, and copies differential data in the specified area to a backup volume.
See, for example, Japanese Laid-open Patent Publication No. 2010-123066, and Japanese Laid-open Patent Publication No. 2012-14286.
In the case where a snapshot of a storage area is created using the copy-on-write scheme, when reading actual data of the snapshot, at least a part of data in the source storage area is referred to, based on management information. Therefore, if the data that is referred to is damaged due to a failure of a storage device or the like, it is not possible to use the actual data of the snapshot.
One method to solve this problem is to back up actual data of a snapshot in another storage area, based on management information. However, with this method, the entire data corresponding to a snapshot is copied each time backup is requested. Therefore, the processing load during copying of data is increased, so that the performance of other operations (for example, the performance in accessing another storage area) in the apparatus executing the copy operation is reduced.
One method to reduce the processing load during copying of data would be to create a snapshot of a storage area, and execute a differential backup of data in the storage area, for example. However, with this method, when data in the source storage area is updated during the differential backup, the snapshot might not match backup data obtained by the differential backup.